package com.cn.wxwinnie.java.io;

import java.math.BigInteger;

/**
 * @author 潇湘暮雨 E-mail:wxwinnie@hotmail.com
 * 
 * @version 创建时间：2014年3月25日 下午7:49:54
 * 
 */
public class ImageFileTools {
	public static byte changeColor(byte b) {
		b += 1;
		return b;
	}

	public static String appendZeroPrefix(String bit, int length) {
		if (bit.length() == length)
			return bit;
		else {
			int zeroNum = length - bit.length();
			StringBuilder builder = new StringBuilder();
			for (int i = 0; i < zeroNum; i++) {
				builder.append("0");
			}
			bit = builder.toString() + bit;
		}
		return bit;
	}

	public static byte binaryString2Integer(String binaryStrin) {
		// 正数的话 前面补零
		// 负数的话 2的32次方 加上这个负数
		byte res;
		BigInteger bi = null;
		if (binaryStrin.startsWith("0")) {
			bi = new BigInteger(binaryStrin, 2);
			res = bi.byteValue();
		} else {
			bi = new BigInteger(binaryStrin, 2);
			res = (byte) (bi.byteValue() - 1 >> 32);
		}
		return res;
	}
}
